#!usr/bin/env python  
# -*- coding:utf-8 _*-
""" 
@author:robot
@file: base_datatype.py 
@version:
@time: 2022/09/13 
"""
from TapClientCaseData.ColumnGenerateData.dynamic.dynamic_door import *


class MysqlDataType:
    # DDL
    SOLE_MYSQL_TYPE_CHAR = SOLE_MYSQL_TYPE_CHAR
    SOLE_MYSQL_TYPE_VARCHAR = SOLE_MYSQL_TYPE_VARCHAR
    SOLE_MYSQL_TYPE_BINARY = SOLE_MYSQL_TYPE_BINARY
    SOLE_MYSQL_TYPE_VARBINARY = SOLE_MYSQL_TYPE_VARBINARY
    SOLE_MYSQL_TYPE_TINYBLOB = SOLE_MYSQL_TYPE_TINYBLOB
    SOLE_MYSQL_TYPE_TINYTEXT = SOLE_MYSQL_TYPE_TINYTEXT
    SOLE_MYSQL_TYPE_BLOB = SOLE_MYSQL_TYPE_BLOB
    SOLE_MYSQL_TYPE_TEXT = SOLE_MYSQL_TYPE_TEXT
    SOLE_MYSQL_TYPE_MEDIUMBLOB = SOLE_MYSQL_TYPE_MEDIUMBLOB
    SOLE_MYSQL_TYPE_MEDIUMTEXT = SOLE_MYSQL_TYPE_MEDIUMTEXT
    SOLE_MYSQL_TYPE_LONGBLOB = SOLE_MYSQL_TYPE_LONGBLOB
    SOLE_MYSQL_TYPE_LONGTEXT = SOLE_MYSQL_TYPE_LONGTEXT
    SOLE_MYSQL_TYPE_ENUM = SOLE_MYSQL_TYPE_ENUM
    SOLE_MYSQL_TYPE_SET = SOLE_MYSQL_TYPE_SET

    SOLE_MYSQL_TYPE_BIT = SOLE_MYSQL_TYPE_BIT
    SOLE_MYSQL_TYPE_TINYINT = SOLE_MYSQL_TYPE_TINYINT
    SOLE_MYSQL_TYPE_TINYINT_UNSIGNED = SOLE_MYSQL_TYPE_TINYINT_UNSIGNED
    SOLE_MYSQL_TYPE_BOOL = SOLE_MYSQL_TYPE_BOOL
    SOLE_MYSQL_TYPE_BOOLEAN = SOLE_MYSQL_TYPE_BOOLEAN
    SOLE_MYSQL_TYPE_SMALLINT = SOLE_MYSQL_TYPE_SMALLINT
    SOLE_MYSQL_TYPE_SMALLINT_UNSIGNED = SOLE_MYSQL_TYPE_SMALLINT_UNSIGNED
    SOLE_MYSQL_TYPE_MEDIUMINT = SOLE_MYSQL_TYPE_MEDIUMINT
    SOLE_MYSQL_TYPE_MEDIUMINT_UNSIGNED = SOLE_MYSQL_TYPE_MEDIUMINT_UNSIGNED
    SOLE_MYSQL_TYPE_INT = SOLE_MYSQL_TYPE_INT
    SOLE_MYSQL_TYPE_INT_UNSIGNED = SOLE_MYSQL_TYPE_INT_UNSIGNED
    SOLE_MYSQL_TYPE_BIGINT = SOLE_MYSQL_TYPE_BIGINT
    SOLE_MYSQL_TYPE_BIGINT_UNSIGNED = SOLE_MYSQL_TYPE_BIGINT_UNSIGNED
    SOLE_MYSQL_TYPE_DECIMAL = SOLE_MYSQL_TYPE_DECIMAL
    SOLE_MYSQL_TYPE_DECIMAL_UNSIGNED = SOLE_MYSQL_TYPE_DECIMAL_UNSIGNED
    SOLE_MYSQL_TYPE_FLOAT = SOLE_MYSQL_TYPE_FLOAT
    SOLE_MYSQL_TYPE_FLOAT_UNSIGNED = SOLE_MYSQL_TYPE_FLOAT_UNSIGNED
    SOLE_MYSQL_TYPE_DOUBLE = SOLE_MYSQL_TYPE_DOUBLE
    SOLE_MYSQL_TYPE_DOUBLE_UNSIGNED = SOLE_MYSQL_TYPE_DOUBLE_UNSIGNED

    SOLE_MYSQL_TYPE_DATE = SOLE_MYSQL_TYPE_DATE
    SOLE_MYSQL_TYPE_DATETIME57 = SOLE_MYSQL_TYPE_DATETIME57
    SOLE_MYSQL_TYPE_DATETIME = SOLE_MYSQL_TYPE_DATETIME
    SOLE_MYSQL_TYPE_TIMESTAMP57 = SOLE_MYSQL_TYPE_TIMESTAMP57
    SOLE_MYSQL_TYPE_TIMESTAMP = SOLE_MYSQL_TYPE_TIMESTAMP
    SOLE_MYSQL_TYPE_TIME57 = SOLE_MYSQL_TYPE_TIME57
    SOLE_MYSQL_TYPE_TIME = SOLE_MYSQL_TYPE_TIME
    SOLE_MYSQL_TYPE_YEAR = SOLE_MYSQL_TYPE_YEAR

    SOLE_MYSQL_TYPE_GEOMETRY = SOLE_MYSQL_TYPE_GEOMETRY
    SOLE_MYSQL_TYPE_POINT = SOLE_MYSQL_TYPE_POINT
    SOLE_MYSQL_TYPE_LINESTRING = SOLE_MYSQL_TYPE_LINESTRING
    SOLE_MYSQL_TYPE_POLYGON = SOLE_MYSQL_TYPE_POLYGON
    SOLE_MYSQL_TYPE_MULTIPOINT = SOLE_MYSQL_TYPE_MULTIPOINT
    SOLE_MYSQL_TYPE_MULTILINESTRING = SOLE_MYSQL_TYPE_MULTILINESTRING
    SOLE_MYSQL_TYPE_MULTIPOLYGON = SOLE_MYSQL_TYPE_MULTIPOLYGON
    SOLE_MYSQL_TYPE_GEOMETRYCOLLECTION = SOLE_MYSQL_TYPE_GEOMETRYCOLLECTION
    # where
    DML_MYSQL_COMMON_WHERE = DML_MYSQL_COMMON_WHERE

    # DML
    DML_MYSQL_CHAR = DML_MYSQL_CHAR
    DML_MYSQL_CHAR_INSERT1 = DML_MYSQL_CHAR_INSERT1
    DML_MYSQL_CHAR_INSERT2 = DML_MYSQL_CHAR_INSERT2
    DML_MYSQL_CHAR_UPDATE = DML_MYSQL_CHAR_UPDATE

    # -- VARCHAR --
    DML_MYSQL_VARCHAR_INSERT1 = DML_MYSQL_VARCHAR_INSERT1
    DML_MYSQL_VARCHAR_INSERT2 = DML_MYSQL_VARCHAR_INSERT2
    DML_MYSQL_VARCHAR_UPDATE = DML_MYSQL_VARCHAR_UPDATE

    # -- VARCHAR --
    DML_MYSQL_BINARY_INSERT1 = DML_MYSQL_BINARY_INSERT1
    DML_MYSQL_BINARY_INSERT2 = DML_MYSQL_BINARY_INSERT2
    DML_MYSQL_BINARY_UPDATE = DML_MYSQL_BINARY_UPDATE

    # -- VARBINARY --
    DML_MYSQL_VARBINARY_INSERT1 = DML_MYSQL_VARBINARY_INSERT1
    DML_MYSQL_VARBINARY_INSERT2 = DML_MYSQL_VARBINARY_INSERT2
    DML_MYSQL_VARBINARY_UPDATE = DML_MYSQL_VARBINARY_UPDATE

    # -- TINYBLOB --
    DML_MYSQL_TINYBLOB_INSERT1 = DML_MYSQL_TINYBLOB_INSERT1
    DML_MYSQL_TINYBLOB_INSERT2 = DML_MYSQL_TINYBLOB_INSERT2
    DML_MYSQL_TINYBLOB_UPDATE = DML_MYSQL_TINYBLOB_UPDATE

    # -- TINYTEXT --
    DML_MYSQL_TINYTEXT_INSERT1 = DML_MYSQL_TINYTEXT_INSERT1
    DML_MYSQL_TINYTEXT_INSERT2 = DML_MYSQL_TINYTEXT_INSERT2
    DML_MYSQL_TINYTEXT_UPDATE = DML_MYSQL_TINYTEXT_UPDATE

    # -- BLOB --
    DML_MYSQL_BLOB_INSERT1 = DML_MYSQL_BLOB_INSERT1
    DML_MYSQL_BLOB_INSERT2 = DML_MYSQL_BLOB_INSERT2
    DML_MYSQL_BLOB_UPDATE = DML_MYSQL_BLOB_UPDATE

    # -- TEXT --
    DML_MYSQL_TEXT_INSERT1 = DML_MYSQL_TEXT_INSERT1
    DML_MYSQL_TEXT_INSERT2 = DML_MYSQL_TEXT_INSERT2
    DML_MYSQL_TEXT_UPDATE = DML_MYSQL_TEXT_UPDATE

    # -- MEDIUMBLOB --
    DML_MYSQL_MEDIUMBLOB_INSERT1 = DML_MYSQL_MEDIUMBLOB_INSERT1
    DML_MYSQL_MEDIUMBLOB_INSERT2 = DML_MYSQL_MEDIUMBLOB_INSERT2
    DML_MYSQL_MEDIUMBLOB_UPDATE = DML_MYSQL_MEDIUMBLOB_UPDATE

    # -- MEDIUMTEXT --
    DML_MYSQL_MEDIUMTEXT_INSERT1 = DML_MYSQL_MEDIUMTEXT_INSERT1
    DML_MYSQL_MEDIUMTEXT_INSERT2 = DML_MYSQL_MEDIUMTEXT_INSERT2
    DML_MYSQL_MEDIUMTEXT_UPDATE = DML_MYSQL_MEDIUMTEXT_UPDATE

    # -- LONGBLOB --
    DML_MYSQL_LONGBLOB_INSERT1 = DML_MYSQL_LONGBLOB_INSERT1
    DML_MYSQL_LONGBLOB_INSERT2 = DML_MYSQL_LONGBLOB_INSERT2
    DML_MYSQL_LONGBLOB_UPDATE = DML_MYSQL_LONGBLOB_UPDATE

    # -- LONGTEXT --
    DML_MYSQL_LONGTEXT_INSERT1 = DML_MYSQL_LONGTEXT_INSERT1
    DML_MYSQL_LONGTEXT_INSERT2 = DML_MYSQL_LONGTEXT_INSERT2
    DML_MYSQL_LONGTEXT_UPDATE = DML_MYSQL_LONGTEXT_UPDATE

    # -- ENUM --
    DML_MYSQL_ENUM_INSERT1 = DML_MYSQL_ENUM_INSERT1
    DML_MYSQL_ENUM_INSERT2 = DML_MYSQL_ENUM_INSERT2
    DML_MYSQL_ENUM_UPDATE = DML_MYSQL_ENUM_UPDATE

    # -- SET --
    DML_MYSQL_SET_INSERT1 = DML_MYSQL_SET_INSERT1
    DML_MYSQL_SET_INSERT2 = DML_MYSQL_SET_INSERT2
    DML_MYSQL_SET_UPDATE = DML_MYSQL_SET_UPDATE

    # -- BIT --
    DML_MYSQL_BIT_INSERT1 = DML_MYSQL_BIT_INSERT1
    DML_MYSQL_BIT_INSERT2 = DML_MYSQL_BIT_INSERT2
    DML_MYSQL_BIT_UPDATE = DML_MYSQL_BIT_UPDATE

    # -- TINYINT --
    DML_MYSQL_TINYINT_INSERT1 = DML_MYSQL_TINYINT_INSERT1
    DML_MYSQL_TINYINT_INSERT2 = DML_MYSQL_TINYINT_INSERT2
    DML_MYSQL_TINYINT_UPDATE = DML_MYSQL_TINYINT_UPDATE

    # -- TINYINT UNSIGNED --
    DML_MYSQL_TINYINT_UNSIGNED_INSERT1 = DML_MYSQL_TINYINT_UNSIGNED_INSERT1
    DML_MYSQL_TINYINT_UNSIGNED_INSERT2 = DML_MYSQL_TINYINT_UNSIGNED_INSERT2
    DML_MYSQL_TINYINT_UNSIGNED_UPDATE = DML_MYSQL_TINYINT_UNSIGNED_UPDATE

    # -- BOOL --
    DML_MYSQL_BOOL_INSERT1 = DML_MYSQL_BOOL_INSERT1
    DML_MYSQL_BOOL_INSERT2 = DML_MYSQL_BOOL_INSERT2
    DML_MYSQL_BOOL_UPDATE = DML_MYSQL_BOOL_UPDATE

    # --BOOLEAN --
    DML_MYSQL_BOOLEAN = DML_MYSQL_BOOLEAN
    DML_MYSQL_BOOLEAN_INSERT1 = DML_MYSQL_BOOLEAN_INSERT1
    DML_MYSQL_BOOLEAN_INSERT2 = DML_MYSQL_BOOLEAN_INSERT2
    DML_MYSQL_BOOLEAN_UPDATE = DML_MYSQL_BOOLEAN_UPDATE

    # --SMALLINT--
    DML_MYSQL_SMALLINT = DML_MYSQL_SMALLINT
    DML_MYSQL_SMALLINT_INSERT1 = DML_MYSQL_SMALLINT_INSERT1
    DML_MYSQL_SMALLINT_INSERT2 = DML_MYSQL_SMALLINT_INSERT2
    DML_MYSQL_SMALLINT_UPDATE = DML_MYSQL_SMALLINT_UPDATE

    # --SMALLINT UNSIGNED--
    DML_MYSQL_SMALLINT_UNSIGNED = DML_MYSQL_SMALLINT_UNSIGNED
    DML_MYSQL_SMALLINT_UNSIGNED_INSERT1 = DML_MYSQL_SMALLINT_UNSIGNED_INSERT1
    DML_MYSQL_SMALLINT_UNSIGNED_INSERT2 = DML_MYSQL_SMALLINT_UNSIGNED_INSERT2
    DML_MYSQL_SMALLINT_UNSIGNED_UPDATE = DML_MYSQL_SMALLINT_UNSIGNED_UPDATE

    # --MEDIUMINT--
    DML_MYSQL_MEDIUMINT = DML_MYSQL_MEDIUMINT
    DML_MYSQL_MEDIUMINT_INSERT1 = DML_MYSQL_MEDIUMINT_INSERT1
    DML_MYSQL_MEDIUMINT_INSERT2 = DML_MYSQL_MEDIUMINT_INSERT2
    DML_MYSQL_MEDIUMINT_UPDATE = DML_MYSQL_MEDIUMINT_UPDATE

    # --MEDIUMINT UNSIGNED--
    DML_MYSQL_MEDIUMINT_UNSIGNED = DML_MYSQL_MEDIUMINT_UNSIGNED
    DML_MYSQL_MEDIUMINT_UNSIGNED_INSERT1 = DML_MYSQL_MEDIUMINT_UNSIGNED_INSERT1
    DML_MYSQL_MEDIUMINT_UNSIGNED_INSERT2 = DML_MYSQL_MEDIUMINT_UNSIGNED_INSERT2
    DML_MYSQL_MEDIUMINT_UNSIGNED_UPDATE = DML_MYSQL_MEDIUMINT_UNSIGNED_UPDATE

    # --INT--
    DML_MYSQL_INT = DML_MYSQL_INT
    DML_MYSQL_INT_INSERT1 = DML_MYSQL_INT_INSERT1
    DML_MYSQL_INT_INSERT2 = DML_MYSQL_INT_INSERT2
    DML_MYSQL_INT_UPDATE = DML_MYSQL_INT_UPDATE

    # --INT UNSIGNED--
    DML_MYSQL_INT_UNSIGNED = DML_MYSQL_INT_UNSIGNED
    DML_MYSQL_INT_UNSIGNED_INSERT1 = DML_MYSQL_INT_UNSIGNED_INSERT1
    DML_MYSQL_INT_UNSIGNED_INSERT2 = DML_MYSQL_INT_UNSIGNED_INSERT2
    DML_MYSQL_INT_UNSIGNED_UPDATE = DML_MYSQL_INT_UNSIGNED_UPDATE

    # --BIGINT--
    DML_MYSQL_BIGINT = DML_MYSQL_BIGINT
    DML_MYSQL_BIGINT_INSERT1 = DML_MYSQL_BIGINT_INSERT1
    DML_MYSQL_BIGINT_INSERT2 = DML_MYSQL_BIGINT_INSERT2
    DML_MYSQL_BIGINT_UPDATE = DML_MYSQL_BIGINT_UPDATE

    # --BIGINT UNSIGNED--
    DML_MYSQL_BIGINT_UNSIGNED = DML_MYSQL_BIGINT_UNSIGNED
    DML_MYSQL_BIGINT_UNSIGNED_INSERT1 = DML_MYSQL_BIGINT_UNSIGNED_INSERT1
    DML_MYSQL_BIGINT_UNSIGNED_INSERT2 = DML_MYSQL_BIGINT_UNSIGNED_INSERT2
    DML_MYSQL_BIGINT_UNSIGNED_UPDATE = DML_MYSQL_BIGINT_UNSIGNED_UPDATE

    # --DECIMAL--
    DML_MYSQL_DECIMAL = DML_MYSQL_DECIMAL
    DML_MYSQL_DECIMAL_INSERT1 = DML_MYSQL_DECIMAL_INSERT1
    DML_MYSQL_DECIMAL_INSERT2 = DML_MYSQL_DECIMAL_INSERT2
    DML_MYSQL_DECIMAL_UPDATE = DML_MYSQL_DECIMAL_UPDATE

    # --DECIMAL UNSIGNED--
    DML_MYSQL_DECIMAL_UNSIGNED = DML_MYSQL_DECIMAL_UNSIGNED
    DML_MYSQL_DECIMAL_UNSIGNED_INSERT1 = DML_MYSQL_DECIMAL_UNSIGNED_INSERT1
    DML_MYSQL_DECIMAL_UNSIGNED_INSERT2 = DML_MYSQL_DECIMAL_UNSIGNED_INSERT2
    DML_MYSQL_DECIMAL_UNSIGNED_UPDATE = DML_MYSQL_DECIMAL_UNSIGNED_UPDATE

    # -- FLOAT --
    DML_MYSQL_FLOAT_INSERT1 = DML_MYSQL_FLOAT_INSERT1
    DML_MYSQL_FLOAT_INSERT2 = DML_MYSQL_FLOAT_INSERT2
    DML_MYSQL_FLOAT_UPDATE = DML_MYSQL_FLOAT_UPDATE

    # -- FLOAT UNSIGNED--
    DML_MYSQL_FLOAT_UNSIGNED_INSERT1 = DML_MYSQL_FLOAT_UNSIGNED_INSERT1
    DML_MYSQL_FLOAT_UNSIGNED_INSERT2 = DML_MYSQL_FLOAT_UNSIGNED_INSERT2
    DML_MYSQL_FLOAT_UNSIGNED_UPDATE = DML_MYSQL_FLOAT_UNSIGNED_UPDATE

    # -- DOUBLE --
    DML_MYSQL_DOUBLE_INSERT1 = DML_MYSQL_DOUBLE_INSERT1
    DML_MYSQL_DOUBLE_INSERT2 = DML_MYSQL_DOUBLE_INSERT2
    DML_MYSQL_DOUBLE_UPDATE = DML_MYSQL_DOUBLE_UPDATE

    # -- DOUBLE UNSIGNED --
    DML_MYSQL_DOUBLE_UNSIGNED_INSERT1 = DML_MYSQL_DOUBLE_UNSIGNED_INSERT1
    DML_MYSQL_DOUBLE_UNSIGNED_INSERT2 = DML_MYSQL_DOUBLE_UNSIGNED_INSERT2
    DML_MYSQL_DOUBLE_UNSIGNED_UPDATE = DML_MYSQL_DOUBLE_UNSIGNED_UPDATE

    # -- DATE --
    DML_MYSQL_DATE_INSERT1 = DML_MYSQL_DATE_INSERT1
    DML_MYSQL_DATE_INSERT2 = DML_MYSQL_DATE_INSERT2
    DML_MYSQL_DATE_UPDATE = DML_MYSQL_DATE_UPDATE

    # -- DATETIME --
    DML_MYSQL_DATETIME_INSERT1 = DML_MYSQL_DATETIME_INSERT1
    DML_MYSQL_DATETIME_INSERT2 = DML_MYSQL_DATETIME_INSERT2
    DML_MYSQL_DATETIME_UPDATE = DML_MYSQL_DATETIME_UPDATE

    # -- DATETIME 57 --
    DML_MYSQL_DATETIME_INSERT571 = DML_MYSQL_DATETIME_INSERT571
    DML_MYSQL_DATETIME_INSERT572 = DML_MYSQL_DATETIME_INSERT572
    DML_MYSQL_DATETIME_UPDATE57 = DML_MYSQL_DATETIME_UPDATE57

    # -- TIMESTAMP --
    DML_MYSQL_TIMESTAMP_INSERT1 = DML_MYSQL_TIMESTAMP_INSERT1
    DML_MYSQL_TIMESTAMP_INSERT2 = DML_MYSQL_TIMESTAMP_INSERT2
    DML_MYSQL_TIMESTAMP_UPDATE = DML_MYSQL_TIMESTAMP_UPDATE

    # -- TIMESTAMP 57--
    DML_MYSQL_TIMESTAMP_INSERT571 = DML_MYSQL_TIMESTAMP_INSERT571
    DML_MYSQL_TIMESTAMP_INSERT572 = DML_MYSQL_TIMESTAMP_INSERT572
    DML_MYSQL_TIMESTAMP_UPDATE57 = DML_MYSQL_TIMESTAMP_UPDATE57

    # -- TIME --
    DML_MYSQL_TIME_INSERT1 = DML_MYSQL_TIME_INSERT1
    DML_MYSQL_TIME_INSERT2 = DML_MYSQL_TIME_INSERT2
    DML_MYSQL_TIME_UPDATE = DML_MYSQL_TIME_UPDATE

    # -- TIME57 --
    DML_MYSQL_TIME_INSERT571 = DML_MYSQL_TIME_INSERT571
    DML_MYSQL_TIME_INSERT572 = DML_MYSQL_TIME_INSERT572
    DML_MYSQL_TIME_UPDATE57 = DML_MYSQL_TIME_UPDATE57

    # --YEAR--
    DML_MYSQL_YEAR = DML_MYSQL_YEAR
    DML_MYSQL_YEAR_INSERT1 = DML_MYSQL_YEAR_INSERT1
    DML_MYSQL_YEAR_INSERT2 = DML_MYSQL_YEAR_INSERT2
    DML_MYSQL_YEAR_UPDATE = DML_MYSQL_YEAR_UPDATE

    # # --YEAR2--
    # DML_MYSQL_YEAR2 = # DML_MYSQL_YEAR2
    # DML_MYSQL_YEAR2_INSERT1 = # DML_MYSQL_YEAR2_INSERT1
    # DML_MYSQL_YEAR2_INSERT1 = # DML_MYSQL_YEAR2_INSERT2
    # DML_MYSQL_YEAR2_UPDATE = # DML_MYSQL_YEAR2_UPDATE

    # --JSON--
    DML_MYSQL_JSON = DML_MYSQL_JSON
    DML_MYSQL_JSON_INSERT1 = DML_MYSQL_JSON_INSERT1
    DML_MYSQL_JSON_INSERT2 = DML_MYSQL_JSON_INSERT2
    DML_MYSQL_JSON_UPDATE = DML_MYSQL_JSON_UPDATE


class PostgresDataType:
    ...


class SqlserverDataType:
    # DDL
    SOLE_SQLSERVER_TYPE_TINYINT = SOLE_SQLSERVER_TYPE_TINYINT
    SOLE_SQLSERVER_TYPE_SMALLINT = SOLE_SQLSERVER_TYPE_SMALLINT
    SOLE_SQLSERVER_TYPE_INT = SOLE_SQLSERVER_TYPE_INT
    SOLE_SQLSERVER_TYPE_BIGINT = SOLE_SQLSERVER_TYPE_BIGINT
    SOLE_SQLSERVER_TYPE_DECIMAL = SOLE_SQLSERVER_TYPE_DECIMAL
    SOLE_SQLSERVER_TYPE_NUMERIC = SOLE_SQLSERVER_TYPE_NUMERIC
    SOLE_SQLSERVER_TYPE_BIT = SOLE_SQLSERVER_TYPE_BIT
    SOLE_SQLSERVER_TYPE_SMALLMONEY = SOLE_SQLSERVER_TYPE_SMALLMONEY
    SOLE_SQLSERVER_TYPE_MONEY = SOLE_SQLSERVER_TYPE_MONEY

    SOLE_SQLSERVER_TYPE_FLOAT = SOLE_SQLSERVER_TYPE_FLOAT
    SOLE_SQLSERVER_TYPE_REAL = SOLE_SQLSERVER_TYPE_REAL

    # SOLE DATE_AND_TIME
    SOLE_SQLSERVER_TYPE_DATE = SOLE_SQLSERVER_TYPE_DATE
    SOLE_SQLSERVER_TYPE_DATETIMEOFFSET = SOLE_SQLSERVER_TYPE_DATETIMEOFFSET
    SOLE_SQLSERVER_TYPE_DATETIME2 = SOLE_SQLSERVER_TYPE_DATETIME2
    SOLE_SQLSERVER_TYPE_SMALLDATETIME = SOLE_SQLSERVER_TYPE_SMALLDATETIME
    SOLE_SQLSERVER_TYPE_DATETIME = SOLE_SQLSERVER_TYPE_DATETIME
    SOLE_SQLSERVER_TYPE_TIME = SOLE_SQLSERVER_TYPE_TIME
    # SOLE CHARACTER_STRINGS
    SOLE_SQLSERVER_TYPE_CHAR = SOLE_SQLSERVER_TYPE_CHAR
    SOLE_SQLSERVER_TYPE_VARCHAR = SOLE_SQLSERVER_TYPE_VARCHAR
    SOLE_SQLSERVER_TYPE_TEXT = SOLE_SQLSERVER_TYPE_TEXT

    # SOLE UNICODE_CHARACTER_STRINGS
    SOLE_SQLSERVER_TYPE_NCHAR = SOLE_SQLSERVER_TYPE_NCHAR
    SOLE_SQLSERVER_TYPE_NVARCHAR = SOLE_SQLSERVER_TYPE_NVARCHAR
    SOLE_SQLSERVER_TYPE_NTEXT = SOLE_SQLSERVER_TYPE_NTEXT

    # SOLE BINARY_STRINGS
    SOLE_SQLSERVER_TYPE_BINARY = SOLE_SQLSERVER_TYPE_BINARY
    SOLE_SQLSERVER_TYPE_VARBINARY = SOLE_SQLSERVER_TYPE_VARBINARY
    SOLE_SQLSERVER_TYPE_IMAGE = SOLE_SQLSERVER_TYPE_IMAGE

    SOLE_SQLSERVER_TYPE_XML = SOLE_SQLSERVER_TYPE_XML

    # where
    DML_SQLSERVER_COMMON_WHERE = DML_SQLSERVER_COMMON_WHERE

    # dml
    DML_SQLSERVER_TINYINT_INSERT_1 = DML_SQLSERVER_TINYINT_INSERT_1
    DML_SQLSERVER_TINYINT_INSERT_2 = DML_SQLSERVER_TINYINT_INSERT_2
    DML_SQLSERVER_TINYINT_UPDATE = DML_SQLSERVER_TINYINT_UPDATE
    # -- smallint --
    DML_SQLSERVER_SMALLINT_INSERT_1 = DML_SQLSERVER_SMALLINT_INSERT_1
    DML_SQLSERVER_SMALLINT_INSERT_2 = DML_SQLSERVER_SMALLINT_INSERT_2
    DML_SQLSERVER_SMALLINT_UPDATE = DML_SQLSERVER_SMALLINT_UPDATE
    # -- int --
    DML_SQLSERVER_INT_INSERT_1 = DML_SQLSERVER_INT_INSERT_1
    DML_SQLSERVER_INT_INSERT_2 = DML_SQLSERVER_INT_INSERT_2
    DML_SQLSERVER_INT_UPDATE = DML_SQLSERVER_INT_UPDATE
    # -- bigint --
    DML_SQLSERVER_BIGINT_INSERT_1 = DML_SQLSERVER_BIGINT_INSERT_1
    DML_SQLSERVER_BIGINT_INSERT_2 = DML_SQLSERVER_BIGINT_INSERT_2
    DML_SQLSERVER_BIGINT_UPDATE = DML_SQLSERVER_BIGINT_UPDATE
    # -- decimal --
    DML_SQLSERVER_DECIMAL_INSERT_1 = DML_SQLSERVER_DECIMAL_INSERT_1
    DML_SQLSERVER_DECIMAL_INSERT_2 = DML_SQLSERVER_DECIMAL_INSERT_2
    DML_SQLSERVER_DECIMAL_UPDATE = DML_SQLSERVER_DECIMAL_UPDATE
    # --numeric --
    DML_SQLSERVER_NUMERIC_INSERT_1 = DML_SQLSERVER_NUMERIC_INSERT_1
    DML_SQLSERVER_NUMERIC_INSERT_2 = DML_SQLSERVER_NUMERIC_INSERT_2
    DML_SQLSERVER_NUMERIC_UPDATE = DML_SQLSERVER_NUMERIC_UPDATE
    # -- bit --
    DML_SQLSERVER_BIT_INSERT_1 = DML_SQLSERVER_BIT_INSERT_1
    DML_SQLSERVER_BIT_INSERT_2 = DML_SQLSERVER_BIT_INSERT_2
    DML_SQLSERVER_BIT_UPDATE = DML_SQLSERVER_BIT_UPDATE
    # --smallmoney --
    DML_SQLSERVER_SMALLMONEY_INSERT_1 = DML_SQLSERVER_SMALLMONEY_INSERT_1
    DML_SQLSERVER_SMALLMONEY_INSERT_2 = DML_SQLSERVER_SMALLMONEY_INSERT_2
    DML_SQLSERVER_SMALLMONEY_UPDATE = DML_SQLSERVER_SMALLMONEY_UPDATE
    # --money --
    DML_SQLSERVER_MONEY_INSERT_1 = DML_SQLSERVER_MONEY_INSERT_1
    DML_SQLSERVER_MONEY_INSERT_2 = DML_SQLSERVER_MONEY_INSERT_2
    DML_SQLSERVER_MONEY_UPDATE = DML_SQLSERVER_MONEY_UPDATE

    # -- float --
    DML_SQLSERVER_FLOAT_INSERT_1 = DML_SQLSERVER_FLOAT_INSERT_1
    DML_SQLSERVER_FLOAT_INSERT_2 = DML_SQLSERVER_FLOAT_INSERT_2
    DML_SQLSERVER_FLOAT_UPDATE = DML_SQLSERVER_FLOAT_UPDATE
    # -- real --
    DML_SQLSERVER_REAL_INSERT_1 = DML_SQLSERVER_REAL_INSERT_1
    DML_SQLSERVER_REAL_INSERT_2 = DML_SQLSERVER_REAL_INSERT_2
    DML_SQLSERVER_REAL_UPDATE = DML_SQLSERVER_REAL_UPDATE

    # -- date --
    DML_SQLSERVER_DATE_INSERT_1 = DML_SQLSERVER_DATE_INSERT_1
    DML_SQLSERVER_DATE_INSERT_2 = DML_SQLSERVER_DATE_INSERT_2
    DML_SQLSERVER_DATE_UPDATE = DML_SQLSERVER_DATE_UPDATE

    # -- datetimeoffset --
    DML_SQLSERVER_DATETIMEOFFSET_INSERT_1 = DML_SQLSERVER_DATETIMEOFFSET_INSERT_1
    DML_SQLSERVER_DATETIMEOFFSET_INSERT_2 = DML_SQLSERVER_DATETIMEOFFSET_INSERT_2
    DML_SQLSERVER_DATETIMEOFFSET_UPDATE = DML_SQLSERVER_DATETIMEOFFSET_UPDATE
    # -- datetime2 --
    DML_SQLSERVER_DATETIME2_INSERT_1 = DML_SQLSERVER_DATETIME2_INSERT_1
    DML_SQLSERVER_DATETIME2_INSERT_2 = DML_SQLSERVER_DATETIME2_INSERT_2
    DML_SQLSERVER_DATETIME2_UPDATE = DML_SQLSERVER_DATETIME2_UPDATE
    # -- smalldatetime --
    DML_SQLSERVER_SMALLDATETIME_INSERT_1 = DML_SQLSERVER_SMALLDATETIME_INSERT_1
    DML_SQLSERVER_SMALLDATETIME_INSERT_2 = DML_SQLSERVER_SMALLDATETIME_INSERT_2
    DML_SQLSERVER_SMALLDATETIME_UPDATE = DML_SQLSERVER_SMALLDATETIME_UPDATE
    # -- datetime --
    DML_SQLSERVER_DATETIME_INSERT_1 = DML_SQLSERVER_DATETIME_INSERT_1
    DML_SQLSERVER_DATETIME_INSERT_2 = DML_SQLSERVER_DATETIME_INSERT_2
    DML_SQLSERVER_DATETIME_UPDATE = DML_SQLSERVER_DATETIME_UPDATE
    # -- time --
    DML_SQLSERVER_TIME_INSERT_1 = DML_SQLSERVER_TIME_INSERT_1
    DML_SQLSERVER_TIME_INSERT_2 = DML_SQLSERVER_TIME_INSERT_2
    DML_SQLSERVER_TIME_UPDATE = DML_SQLSERVER_TIME_UPDATE

    # -- char --
    DML_SQLSERVER_CHAR_INSERT_1 = DML_SQLSERVER_CHAR_INSERT_1
    DML_SQLSERVER_CHAR_INSERT_2 = DML_SQLSERVER_CHAR_INSERT_2
    DML_SQLSERVER_CHAR_UPDATE = DML_SQLSERVER_CHAR_UPDATE
    # -- varchar --
    DML_SQLSERVER_VARCHAR_INSERT_1 = DML_SQLSERVER_VARCHAR_INSERT_1
    DML_SQLSERVER_VARCHAR_INSERT_2 = DML_SQLSERVER_VARCHAR_INSERT_2
    DML_SQLSERVER_VARCHAR_UPDATE = DML_SQLSERVER_VARCHAR_UPDATE
    # -- text --
    DML_SQLSERVER_TEXT_INSERT_1 = DML_SQLSERVER_TEXT_INSERT_1
    DML_SQLSERVER_TEXT_INSERT_2 = DML_SQLSERVER_TEXT_INSERT_2
    DML_SQLSERVER_TEXT_UPDATE = DML_SQLSERVER_TEXT_UPDATE

    # -- nchar --
    DML_SQLSERVER_NCHAR_INSERT_1 = DML_SQLSERVER_NCHAR_INSERT_1
    DML_SQLSERVER_NCHAR_INSERT_2 = DML_SQLSERVER_NCHAR_INSERT_2
    DML_SQLSERVER_NCHAR_UPDATE = DML_SQLSERVER_NCHAR_UPDATE
    # -- nvarchar --
    DML_SQLSERVER_NVARCHAR_INSERT_1 = DML_SQLSERVER_NVARCHAR_INSERT_1
    DML_SQLSERVER_NVARCHAR_INSERT_2 = DML_SQLSERVER_NVARCHAR_INSERT_2
    DML_SQLSERVER_NVARCHAR_UPDATE = DML_SQLSERVER_NVARCHAR_UPDATE
    # -- ntext --
    DML_SQLSERVER_NTEXT_INSERT_1 = DML_SQLSERVER_NTEXT_INSERT_1
    DML_SQLSERVER_NTEXT_INSERT_2 = DML_SQLSERVER_NTEXT_INSERT_2
    DML_SQLSERVER_NTEXT_UPDATE = DML_SQLSERVER_NTEXT_UPDATE

    # -- binary --
    DML_SQLSERVER_BINARY_INSERT_1 = DML_SQLSERVER_BINARY_INSERT_1
    DML_SQLSERVER_BINARY_INSERT_2 = DML_SQLSERVER_BINARY_INSERT_2
    DML_SQLSERVER_BINARY_UPDATE = DML_SQLSERVER_BINARY_UPDATE
    # -- varbinary --
    DML_SQLSERVER_VARBINARY_INSERT_1 = DML_SQLSERVER_VARBINARY_INSERT_1
    DML_SQLSERVER_VARBINARY_INSERT_2 = DML_SQLSERVER_VARBINARY_INSERT_2
    DML_SQLSERVER_VARBINARY_UPDATE = DML_SQLSERVER_VARBINARY_UPDATE
    # -- image --
    DML_SQLSERVER_IMAGE_INSERT_1 = DML_SQLSERVER_IMAGE_INSERT_1
    DML_SQLSERVER_IMAGE_INSERT_2 = DML_SQLSERVER_IMAGE_INSERT_2
    DML_SQLSERVER_IMAGE_UPDATE = DML_SQLSERVER_IMAGE_UPDATE
    # -- xml --
    DML_SQLSERVER_XML_INSERT_1 = DML_SQLSERVER_XML_INSERT_1
    DML_SQLSERVER_XML_INSERT_2 = DML_SQLSERVER_XML_INSERT_2
    DML_SQLSERVER_XML_UPDATE = DML_SQLSERVER_XML_UPDATE
